package com.itheima.jobs;

import com.alibaba.dubbo.config.annotation.Reference;
import com.itheima.service.MemberService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;

import java.text.SimpleDateFormat;
import java.util.*;

/**
 * 定时任务，统计每月新增会员数
 */
@Component
public class CountMemberNums {
    @Reference
    private MemberService memberService;

    // 初始化，统计过去两年的每月会员新增数
    public void countMemberNums() {
        Calendar calendar = Calendar.getInstance();  // 获得日历对象，模拟时间
        calendar.add(Calendar.MONTH, -1);  // 当前月前一个月日期
        Date date = calendar.getTime();
        // 获取月份字符串
        String month = new SimpleDateFormat("yyyy-MM").format(date);// 上一个月字符串
        // 查询结果
        Integer num = memberService.findMemberCountByMonth(month);

        // 保存月份和会员总数量
        memberService.saveCurrentMonthMemberCount(month,num);
        System.out.println(month+"月会员总数："+num+"，保存成功！");
    }
}
